package com.bolehui.domain.vo;

import com.bolehui.config.BigDecimalDeserializer;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import lombok.Data;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author chendongjie     email:chendongjie@gz.iscas.ac.cn
 * @version 1.0
 * @ClassName EducationVO
 * @Description
 * @createTime 2025/3/18-13:29
 * Copyright (C) 2021-2022 CASEEDER, All Rights Reserved.
 * 注意：本内容仅限于内部传阅，禁止外泄以及用于其他的商业目的
 */
@Data
public class EducationVO {

    @NotBlank(message = "学校名称不能为空")
    private String schoolName;

    @NotBlank(message = "学历不能为空")
    private String level;

    @NotBlank(message = "专业不能为空")
    private String major;

    @NotNull(message = "开始时间不能为空")
    private Date start;

    private Date end;

    @DecimalMin(value = "0.0", message = "GPA 不能小于 0")
    @DecimalMax(value = "4.0", message = "GPA 不能大于 4")
    @JsonDeserialize(using = BigDecimalDeserializer.class)
    private BigDecimal GPA;

    private String rank;

    private String mainCourses;

}
